package com.pansoft.openplanet.bean;

import java.io.Serializable;

/**
 * 创建子钱包的bean 跳转界面传输数据用
 * @author YQS
 */
public class CreateChildWalletBean implements Serializable{
    //链编号
    private  int chainId;
    //钱包头像
    private String  walletAvatar;
    //钱包名称
    private String walletName;
    //手机号
    private String phoneNumber;
    //登录密码
    private String loginPwd;
    //助记词
    private String mnemonic;
    //钱包地址
    private String walletAddress;
    //钱包公钥
    private String publicKey;
    //钱包私钥
    private String privateKey;
    //eos钱包Active
    private String eosActivePubKey;
    //eos钱包Active
    private String eosActivePriKey;

    // act 钱包的keystring
    private String actKeyStr;

    //btc hd的xpub
    private String hdBtcXpub;

    public int getChainId() {
        return chainId;
    }

    public CreateChildWalletBean setChainId(int chainId) {
        this.chainId = chainId;
        return this;
    }

    public String getWalletAvatar() {
        return walletAvatar;
    }

    public CreateChildWalletBean setWalletAvatar(String walletAvatar) {
        this.walletAvatar = walletAvatar;
        return this;
    }

    public String getWalletName() {
        return walletName;
    }

    public CreateChildWalletBean setWalletName(String walletName) {
        this.walletName = walletName;
        return this;
    }

    public String getPhoneNumber() {
        return phoneNumber;
    }

    public CreateChildWalletBean setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
        return this;
    }

    public String getLoginPwd() {
        return loginPwd;
    }

    public CreateChildWalletBean setLoginPwd(String loginPwd) {
        this.loginPwd = loginPwd;
        return this;
    }

    public String getMnemonic() {
        return mnemonic;
    }

    public CreateChildWalletBean setMnemonic(String mnemonic) {
        this.mnemonic = mnemonic;
        return this;
    }

    public String getWalletAddress() {
        return walletAddress;
    }

    public CreateChildWalletBean setWalletAddress(String walletAddress) {
        this.walletAddress = walletAddress;
        return this;
    }

    public String getPublicKey() {
        return publicKey;
    }

    public CreateChildWalletBean setPublicKey(String publicKey) {
        this.publicKey = publicKey;
        return this;
    }

    public String getPrivateKey() {
        return privateKey;
    }

    public CreateChildWalletBean setPrivateKey(String privateKey) {
        this.privateKey = privateKey;
        return this;
    }

    public String getEosActivePubKey() {
        return eosActivePubKey;
    }

    public CreateChildWalletBean setEosActivePubKey(String eosActivePubKey) {
        this.eosActivePubKey = eosActivePubKey;
        return this;
    }

    public String getEosActivePriKey() {
        return eosActivePriKey;
    }

    public CreateChildWalletBean setEosActivePriKey(String eosActivePriKey) {
        this.eosActivePriKey = eosActivePriKey;
        return this;
    }

    public String getActKeyStr() {
        return actKeyStr;
    }

    public CreateChildWalletBean setActKeyStr(String actKeyStr) {
        this.actKeyStr = actKeyStr;
        return this;
    }

    public String getHdBtcXpub() {
        return hdBtcXpub;
    }

    public void setHdBtcXpub(String hdBtcXpub) {
        this.hdBtcXpub = hdBtcXpub;
    }

    private CreateChildWalletBean(Builder builder) {
        chainId = builder.chainId;
        walletAvatar = builder.walletAvatar;
        walletName = builder.walletName;
        phoneNumber = builder.phoneNumber;
        loginPwd = builder.loginPwd;
        mnemonic = builder.mnemonic;
        walletAddress = builder.walletAddress;
        publicKey = builder.publicKey;
        privateKey = builder.privateKey;
        eosActivePubKey = builder.eosActivePubKey;
        eosActivePriKey = builder.eosActivePriKey;
        actKeyStr = builder.actKeyStr;
    }

    public static final class Builder {
        private int chainId;
        private String walletAvatar;
        private String walletName;
        private String phoneNumber;
        private String loginPwd;
        private String mnemonic;
        private String walletAddress;
        private String publicKey;
        private String privateKey;
        private String eosActivePubKey;
        private String eosActivePriKey;
        private String actKeyStr;

        public Builder() {
        }

        public Builder chainId(int val) {
            chainId = val;
            return this;
        }

        public Builder walletAvatar(String val) {
            walletAvatar = val;
            return this;
        }

        public Builder walletName(String val) {
            walletName = val;
            return this;
        }

        public Builder phoneNumber(String val) {
            phoneNumber = val;
            return this;
        }

        public Builder loginPwd(String val) {
            loginPwd = val;
            return this;
        }

        public Builder mnemonic(String val) {
            mnemonic = val;
            return this;
        }

        public Builder walletAddress(String val) {
            walletAddress = val;
            return this;
        }

        public Builder publicKey(String val) {
            publicKey = val;
            return this;
        }

        public Builder privateKey(String val) {
            privateKey = val;
            return this;
        }

        public Builder eosActivePubKey(String val) {
            eosActivePubKey = val;
            return this;
        }

        public Builder eosActivePriKey(String val) {
            eosActivePriKey = val;
            return this;
        }

        public Builder actKeyStr(String val) {
            actKeyStr = val;
            return this;
        }

        public CreateChildWalletBean build() {
            return new CreateChildWalletBean(this);
        }
    }


//    private CreateChildWalletBean(Builder builder) {
//        setChainId(builder.chainId);
//        setWalletAvatar(builder.walletAvatar);
//        setWalletName(builder.walletName);
//        setPhoneNumber(builder.phoneNumber);
//        setMnemonic(builder.mnemonic);
//        setWalletAddress(builder.walletAddress);
//        setPublicKey(builder.publicKey);
//        setPrivateKey(builder.privateKey);
//        setEosActivePubKey(builder.eosActivePubKey);
//        setEosActivePriKey(builder.eosActivePriKey);
//        setActKeyStr(builder.actKeyStr);
//    }
//
//
//    public int getChainId() {
//        return chainId;
//    }
//
//    public CreateChildWalletBean setChainId(int chainId) {
//        this.chainId = chainId;
//        return this;
//    }
//
//    public String getWalletAvatar() {
//        return walletAvatar;
//    }
//
//    public CreateChildWalletBean setWalletAvatar(String walletAvatar) {
//        this.walletAvatar = walletAvatar;
//        return this;
//    }
//
//    public String getWalletName() {
//        return walletName;
//    }
//
//    public CreateChildWalletBean setWalletName(String walletName) {
//        this.walletName = walletName;
//        return this;
//    }
//
//    public String getPhoneNumber() {
//        return phoneNumber;
//    }
//
//    public CreateChildWalletBean setPhoneNumber(String phoneNumber) {
//        this.phoneNumber = phoneNumber;
//        return this;
//    }
//
//    public String getMnemonic() {
//        return mnemonic;
//    }
//
//    public CreateChildWalletBean setMnemonic(String mnemonic) {
//        this.mnemonic = mnemonic;
//        return this;
//    }
//
//    public String getWalletAddress() {
//        return walletAddress;
//    }
//
//    public CreateChildWalletBean setWalletAddress(String walletAddress) {
//        this.walletAddress = walletAddress;
//        return this;
//    }
//
//    public String getPublicKey() {
//        return publicKey;
//    }
//
//    public CreateChildWalletBean setPublicKey(String publicKey) {
//        this.publicKey = publicKey;
//        return this;
//    }
//
//    public String getPrivateKey() {
//        return privateKey;
//    }
//
//    public CreateChildWalletBean setPrivateKey(String privateKey) {
//        this.privateKey = privateKey;
//        return this;
//    }
//
//    public String getEosActivePubKey() {
//        return eosActivePubKey;
//    }
//
//    public CreateChildWalletBean setEosActivePubKey(String eosActivePubKey) {
//        this.eosActivePubKey = eosActivePubKey;
//        return this;
//    }
//
//    public String getEosActivePriKey() {
//        return eosActivePriKey;
//    }
//
//    public CreateChildWalletBean setEosActivePriKey(String eosActivePriKey) {
//        this.eosActivePriKey = eosActivePriKey;
//        return this;
//    }
//
//    public String getActKeyStr() {
//        return actKeyStr;
//    }
//
//    public CreateChildWalletBean setActKeyStr(String actKeyStr) {
//        this.actKeyStr = actKeyStr;
//        return this;
//    }
//
//    public static final class Builder {
//        private int chainId;
//        private String walletAvatar;
//        private String walletName;
//        private String phoneNumber;
//        private String mnemonic;
//        private String walletAddress;
//        private String publicKey;
//        private String privateKey;
//        private String eosActivePubKey;
//        private String eosActivePriKey;
//        private String actKeyStr;
//
//        public Builder() {
//        }
//
//        public Builder chainId(int val) {
//            chainId = val;
//            return this;
//        }
//
//        public Builder walletAvatar(String val) {
//            walletAvatar = val;
//            return this;
//        }
//
//        public Builder walletName(String val) {
//            walletName = val;
//            return this;
//        }
//
//        public Builder phoneNumber(String val) {
//            phoneNumber = val;
//            return this;
//        }
//
//        public Builder mnemonic(String val) {
//            mnemonic = val;
//            return this;
//        }
//
//        public Builder walletAddress(String val) {
//            walletAddress = val;
//            return this;
//        }
//
//        public Builder publicKey(String val) {
//            publicKey = val;
//            return this;
//        }
//
//        public Builder privateKey(String val) {
//            privateKey = val;
//            return this;
//        }
//
//        public Builder eosActivePubKey(String val) {
//            eosActivePubKey = val;
//            return this;
//        }
//
//        public Builder eosActivePriKey(String val) {
//            eosActivePriKey = val;
//            return this;
//        }
//
//        public Builder actKeyStr(String val) {
//            actKeyStr = val;
//            return this;
//        }
//
//        public CreateChildWalletBean build() {
//            return new CreateChildWalletBean(this);
//        }
//    }
}
